Merge upstream version 30.2
authorRob Browning <rlb@defaultvalue.org>
Sun, 9 Nov 2025 19:51:42 +0000 (13:51 -0600)
committerRob Browning <rlb@defaultvalue.org>
Sun, 9 Nov 2025 19:52:04 +0000 (13:52 -0600)
24 files changed:
1  2 
debian/.git-dpm
debian/patches/0001-Prefer-usr-share-info-emacs.patch
debian/patches/0002-Run-debian-startup-and-set-debian-emacs-flavor.patch
debian/patches/0003-Remove-files-that-appear-to-be-incompatible-with-the.patch
debian/patches/0004-Adjust-documentation-references-for-Debian.patch
debian/patches/0005-Modify-the-output-of-version-to-indicate-Debian-modi.patch
debian/patches/0006-Don-t-try-to-build-src-macuvs.h-via-IVD_Sequences.tx.patch
debian/patches/0007-Kill-gpg-agent-in-package-test.el-to-avoid-a-race.patch
debian/patches/0008-Mark-vc-bzr-test-fauilt-bzr-autoloads-as-unstable-fo.patch
debian/patches/0009-pdumper-set-DUMP_RELOC_ALIGNMENT_BITS-1-for-m68k.patch
debian/patches/0010-Mark-test-undo-region-as-unstable.patch
debian/patches/0011-Mark-flaky-test-process-tests-multiple-threads-waiti.patch
debian/patches/0012-Add-inhibit-native-compilation.patch
debian/patches/0013-Rename-to-inhibit-automatic-native-compilation.patch
debian/patches/0014-Patch-project-vc-recognizes-git-test-for-Debian-buil.patch
debian/patches/0015-Change-native-comp-async-jobs-number-default-to-1.patch
debian/patches/0016-Change-native-comp-async-report-warnings-errors-to-s.patch
debian/patches/0017-Mark-dired-test-bug27243-02-as-unstable-for-now.patch
debian/patches/0018-Fix-eldoc-warning-in-patch-adding-debian-emacs-flavo.patch
debian/patches/0019-Boost-BASE_PURESIZE-in-attempt-to-fix-build-on-32-bi.patch
debian/patches/0020-Disable-server-tests-server-force-stop-keeps-frames-.patch
debian/patches/0021-Disable-emacs-module-tests.el.patch
debian/patches/0022-Add-public-interfaces-for-accessing-builtin-package-.patch
debian/patches/0023-test-lisp-net-shr-tests.el-shr-test-zoom-image-Fix-i.patch

diff --cc debian/.git-dpm
index b4378d00e00ddba05f732a4b48fe54b801c58a3a,0000000000000000000000000000000000000000..2bbd969237d8c08fdb37eb630f56e098e10b820c
mode 100644,000000..100644
--- /dev/null
@@@ -1,8 -1,0 +1,8 @@@
- 0ba136caed372eb8eb963b2a421f944f4671ddec
- 0ba136caed372eb8eb963b2a421f944f4671ddec
- c512c0fa6ab117d10b0602d2b2d1fe5880695944
 +# see git-dpm(1) from git-dpm package
++60a4ccd482d6856c7aa1cecf0d9ab2461c27b96d
++60a4ccd482d6856c7aa1cecf0d9ab2461c27b96d
++a24283bc41f2e3b3ba14c420f86f7ec581624a82
 +a24283bc41f2e3b3ba14c420f86f7ec581624a82
 +emacs_30.2+1.orig.tar.xz
 +5f56965565248d570f1fd86458b57c8a75960ebf
 +31109076
index a93cdb048f3f77b7a75d7ab464c11faddb30f928,0000000000000000000000000000000000000000..56cf69acf18295fc7ae390c67cb75a4cf54257b4
mode 100644,000000..100644
--- /dev/null
@@@ -1,27 -1,0 +1,27 @@@
- From 930bc369a13ea9f845f31e3d3e7f26fd5a57bd61 Mon Sep 17 00:00:00 2001
++From 93eaed77367b8c730c152e103792276ba5621d00 Mon Sep 17 00:00:00 2001
 +From: Rob Browning <rlb@defaultvalue.org>
 +Date: Sun, 7 Apr 2013 15:03:05 -0500
 +Subject: Prefer /usr/share/info/emacs/
 +
 +Emacs prefers /usr/share/info/emacs to /usr/share/info.
 +
 +The value of Info-default-directory-list has been augmented via
 +lisp/info.el to include /usr/share/info/emacs before /usr/share/info.
 +---
 + lisp/info.el | 3 ++-
 + 1 file changed, 2 insertions(+), 1 deletion(-)
 +
 +diff --git a/lisp/info.el b/lisp/info.el
- index b484afc08cc..d174f97e079 100644
++index 4aafe223549..4b414fca3fb 100644
 +--- a/lisp/info.el
 ++++ b/lisp/info.el
 +@@ -713,7 +713,8 @@ Info--default-directory-list
 +            (nconc standard-info-dirs (list config-dir))
 +          (cons config-dir standard-info-dirs))))
 +     (if (not (eq system-type 'windows-nt))
 +-     dirs
 ++     ;; Debian: add flavor info directory in front
 ++        (cons "/usr/share/info/emacs" dirs)
 +       ;; Include the info directory near where Emacs executable was installed.
 +       (let* ((instdir (file-name-directory invocation-directory))
 +           (dir1 (expand-file-name "../info/" instdir))
index 852d4d728edbee51c238110f8b587a96eb723c75,0000000000000000000000000000000000000000..26efd5f654837b1d9a76535b8c2d46924b18904f
mode 100644,000000..100644
--- /dev/null
@@@ -1,48 -1,0 +1,48 @@@
- From 5a2dcc0916119e008cb5ecfa02e99915e86a27fa Mon Sep 17 00:00:00 2001
++From cbac538a20af91b9efbf655ab5b2ffaa698e6911 Mon Sep 17 00:00:00 2001
 +From: Rob Browning <rlb@defaultvalue.org>
 +Date: Mon, 4 Apr 2011 22:46:22 -0500
 +Subject: Run debian-startup and set debian-emacs-flavor
 +
 +Emacs runs debian-startup and sets debian-emacs-flavor.
 +
 +* Emacs runs debian-startup during the startup process unless
 +  site-run-file is false.
 +
 +* The global variable debian-emacs-flavor is bound to 'emacs.
 +
 +Author: Rob Browning <rlb@defaultvalue.org>
 +---
 + lisp/startup.el | 13 ++++++++++++-
 + 1 file changed, 12 insertions(+), 1 deletion(-)
 +
 +diff --git a/lisp/startup.el b/lisp/startup.el
 +index 7ec500dfecb..e07e6515991 100644
 +--- a/lisp/startup.el
 ++++ b/lisp/startup.el
 +@@ -441,6 +441,10 @@ tutorial-directory
 +   :type 'directory
 +   :initialize #'custom-initialize-delay)
 + 
 ++(defconst debian-emacs-flavor 'emacs
 ++  "A symbol representing the particular debian flavor of emacs running.
 ++Something like 'emacs, 'xemacs21, etc.")
 ++
 + (defun normal-top-level-add-subdirs-to-load-path ()
 +   "Recursively add all subdirectories of `default-directory' to `load-path'.
 + More precisely, this uses only the subdirectories whose names
 +@@ -1493,7 +1497,14 @@ command-line
 +         ;; Sites should not disable the startup screen.
 +         ;; Only individuals should disable the startup screen.
 +         (let ((inhibit-startup-screen inhibit-startup-screen))
 +-       (load site-run-file t t)))
 ++          (progn
 ++            ;; This form has been added by Debian to load all the
 ++            ;; debian package snippets (dh-elpa, etc.).  It's in here
 ++            ;; because we want -q to kill it too.
 ++            (if (load "debian-startup" t t nil)
 ++                (debian-startup debian-emacs-flavor))
 ++            ;; This is the normal upstream behavior
 ++            (load site-run-file t t))))
 + 
 +     ;; Load that user's init file, or the default one, or none.
 +     (startup--load-user-init-file
index 164a49ca3a3d3b12e33986133f5d93e2d0741176,0000000000000000000000000000000000000000..a6ad61f6c7d6eb4d7f8ff9f0b8975a56e981ca44
mode 100644,000000..100644
--- /dev/null
@@@ -1,261 -1,0 +1,261 @@@
- From d293e2f1023e9da87d0e5b0cad6e5df2e1decd15 Mon Sep 17 00:00:00 2001
++From ee535a6144c43d93958cdc58faf74a325fa9e5e6 Mon Sep 17 00:00:00 2001
 +From: Rob Browning <rlb@defaultvalue.org>
 +Date: Mon, 4 Apr 2011 22:46:24 -0500
 +Subject: Remove files that appear to be incompatible with the DFSG
 +
 +Files that appear to be incompatible with the DFSG have been removed.
 +
 +A number of files have been removed from this package because their
 +licenses are not compatible with the Debian Free Software Guidelines
 +(DFSG), or because it wasn't completely clear that their licenses are
 +compatible.
 +
 +In particular, all of the files which are covered under the GFDL and
 +have invariant sections have been removed in accordance with this
 +General Resolution: http://www.debian.org/vote/2006/vote_001.
 +
 +The files that have been removed, but still appear to be
 +distributable, have been moved to packages in Debian's non-free
 +section.
 +
 +Author: Rob Browning <rlb@defaultvalue.org>
 +Added-by: Rob Browning <rlb@defaultvalue.org>
 +Status: new
 +---
 + Makefile.in          | 44 +++++++++++++++++---------------------------
 + configure.ac         | 18 +++++++-----------
 + doc/misc/Makefile.in | 44 +++++---------------------------------------
 + lisp/help.el         |  8 ++++++++
 + 4 files changed, 37 insertions(+), 77 deletions(-)
 +
 +diff --git a/Makefile.in b/Makefile.in
- index a89836dca2c..b3fd05a23bb 100644
++index ec6239571a8..333e8d481d9 100644
 +--- a/Makefile.in
 ++++ b/Makefile.in
 +@@ -174,7 +174,9 @@ man1dir=
 + # Where to install and expect the info files describing Emacs.
 + infodir=@infodir@
 + # Info files not in the doc/misc directory (we get those via make echo-info).
 +-INFO_NONMISC=emacs.info eintr.info elisp.info
 ++# Debian: moved DFSG incompatible files to emacs*-common-non-dfsg
 ++# package (see /usr/share/doc/emacs*-common/copyright).
 ++INFO_NONMISC=
 + 
 + # Directory for local state files for all programs.
 + localstatedir=@localstatedir@
- @@ -1005,8 +1007,7 @@ $(1)_$(2):
++@@ -1007,8 +1009,7 @@ $(1)_$(2):
 + ###      normally don't want to recompile.  For example, the 'mostlyclean'
 + ###      target for GCC does not delete 'libgcc.a', because recompiling it
 + ###      is rarely necessary and takes a lot of time.
 +-mostlyclean_dirs = src oldXMenu lwlib lib lib-src nt doc/emacs doc/misc \
 +-  doc/lispref doc/lispintro test
 ++mostlyclean_dirs = src oldXMenu lwlib lib lib-src nt doc/misc test
 + 
 + ### Add the libexec directory to mostlyclean_dirs if its Makefile has
 + ### been created.
- @@ -1136,11 +1137,11 @@ test/%:
++@@ -1138,11 +1139,11 @@ test/%:
 + dist:
 +      cd ${srcdir}; ./make-dist
 + 
 +-DVIS  = lispref-dvi  lispintro-dvi  emacs-dvi  misc-dvi
 +-HTMLS = lispref-html lispintro-html emacs-html misc-html
 +-INFOS = lispref-info lispintro-info emacs-info misc-info
 +-PDFS  = lispref-pdf  lispintro-pdf  emacs-pdf  misc-pdf
 +-PSS   = lispref-ps   lispintro-ps   emacs-ps   misc-ps
 ++DVIS  = misc-dvi
 ++HTMLS = misc-html
 ++INFOS = misc-info
 ++PDFS  = misc-pdf
 ++PSS   = misc-ps
 + 
 + DOCS = $(DVIS) $(HTMLS) $(INFOS) $(PDFS) $(PSS)
 + $(DOCS):
- @@ -1171,9 +1172,6 @@ info-dir:
++@@ -1173,9 +1174,6 @@ info-dir:
 + texi_misc = $(shell MAKEFLAGS= ${MAKE} --no-print-directory -s -C doc/misc echo-sources)
 + 
 + srcdir_doc_info_dir_inputs = \
 +-  ${srcdir}/doc/emacs/emacs.texi \
 +-  ${srcdir}/doc/lispintro/emacs-lisp-intro.texi \
 +-  ${srcdir}/doc/lispref/elisp.texi \
 +   $(addprefix ${srcdir}/doc/misc/,${texi_misc})
 + info_dir_inputs = \
 +   ../build-aux/dir_top \
- @@ -1195,14 +1193,10 @@ ${srcdir}/info/dir:
++@@ -1197,14 +1195,10 @@ ${srcdir}/info/dir:
 +       AWK='${AWK}' ../build-aux/make-info-dir ${info_dir_inputs} \
 +      ) >$@.tmp && mv $@.tmp $@
 + 
 +-INSTALL_DVI = install-emacs-dvi install-lispref-dvi \
 +-     install-lispintro-dvi install-misc-dvi
 +-INSTALL_HTML = install-emacs-html install-lispref-html \
 +-     install-lispintro-html install-misc-html
 +-INSTALL_PDF = install-emacs-pdf install-lispref-pdf \
 +-     install-lispintro-pdf install-misc-pdf
 +-INSTALL_PS = install-emacs-ps install-lispref-ps \
 +-     install-lispintro-ps install-misc-ps
 ++INSTALL_DVI = install-misc-dvi
 ++INSTALL_HTML = install-misc-html
 ++INSTALL_PDF = install-misc-pdf
 ++INSTALL_PS = install-misc-ps
 + INSTALL_DOC = $(INSTALL_DVI) $(INSTALL_HTML) $(INSTALL_PDF) $(INSTALL_PS)
 + 
 + ## Install non .info forms of the documentation.
- @@ -1220,14 +1214,10 @@ install-pdf:
++@@ -1222,14 +1216,10 @@ install-pdf:
 + install-ps: $(INSTALL_PS)
 + 
 + 
 +-UNINSTALL_DVI = uninstall-emacs-dvi uninstall-lispref-dvi \
 +-     uninstall-lispintro-dvi uninstall-misc-dvi
 +-UNINSTALL_HTML = uninstall-emacs-html uninstall-lispref-html \
 +-     uninstall-lispintro-html uninstall-misc-html
 +-UNINSTALL_PDF = uninstall-emacs-pdf uninstall-lispref-pdf \
 +-     uninstall-lispintro-pdf uninstall-misc-pdf
 +-UNINSTALL_PS = uninstall-emacs-ps uninstall-lispref-ps \
 +-     uninstall-lispintro-ps uninstall-misc-ps
 ++UNINSTALL_DVI = uninstall-misc-dvi
 ++UNINSTALL_HTML = uninstall-misc-html
 ++UNINSTALL_PDF = uninstall-misc-pdf
 ++UNINSTALL_PS = uninstall-misc-ps
 + UNINSTALL_DOC = $(UNINSTALL_DVI) $(UNINSTALL_HTML) $(UNINSTALL_PDF) $(UNINSTALL_PS)
 + 
 + $(UNINSTALL_DOC):
 +diff --git a/configure.ac b/configure.ac
- index cf274c0cffd..5ab0d6082f2 100644
++index aedf5de759f..478bd122679 100644
 +--- a/configure.ac
 ++++ b/configure.ac
 +@@ -7837,11 +7837,10 @@ AC_DEFUN
 + 
 + AC_CONFIG_FILES([lib/Makefile lib-src/Makefile oldXMenu/Makefile src/Makefile
 +                  lwlib/Makefile nextstep/Makefile nt/Makefile])
 +-ARCH_INDEPENDENT_CONFIG_FILES([doc/emacs/Makefile doc/misc/Makefile
 +-                               doc/lispintro/Makefile doc/lispref/Makefile
 ++ARCH_INDEPENDENT_CONFIG_FILES([doc/misc/Makefile
 +                             lisp/Makefile leim/Makefile])
 + 
 +-SUBDIR_MAKEFILES="lib/Makefile lib-src/Makefile oldXMenu/Makefile src/Makefile lwlib/Makefile nextstep/Makefile nt/Makefile doc/emacs/Makefile doc/misc/Makefile doc/lispintro/Makefile doc/lispref/Makefile lisp/Makefile leim/Makefile"
 ++SUBDIR_MAKEFILES="lib/Makefile lib-src/Makefile oldXMenu/Makefile src/Makefile lwlib/Makefile nextstep/Makefile nt/Makefile doc/misc/Makefile lisp/Makefile leim/Makefile"
 + 
 + dnl The test/ directory is missing if './make-dist --no-tests' was used.
 + opt_makefile=test/Makefile
 +@@ -7913,14 +7912,11 @@ AC_DEFUN
 +   fi
 +   ])
 + 
 +-  dnl Perhaps this would be better named doc-emacs-emacsver.texi?
 +-  dnl See comments for etc-refcards-emacsver.tex.
 +-  dnl Since we get a doc/emacs directory generated anyway, for the Makefile,
 +-  dnl it is not quite the same.  But we are generating in $srcdir.
 +-  AC_CONFIG_COMMANDS([doc/emacs/emacsver.texi], [
 +-  ${MAKE-make} -s --no-print-directory -C doc/emacs doc-emacsver || \
 +-  AC_MSG_ERROR(['doc/emacs/emacsver.texi' could not be made.])
 +-  ])
 ++  # This file is normally generated indirectly via
 ++  # doc/emacs/Makefile.in, but since we've removed the other doc/emacs
 ++  # files for the DFSG split, and we don't have any prebuilt info files,
 ++  # generate it directly here.
 ++  AC_CONFIG_FILES([doc/emacs/emacsver.texi])
 + 
 +   dnl If we give this the more natural name, etc/refcards/emacsver.texi,
 +   dnl then a directory etc/refcards is created in the build directory,
 +diff --git a/doc/misc/Makefile.in b/doc/misc/Makefile.in
 +index 3e21a61f9ea..5c66f00dc09 100644
 +--- a/doc/misc/Makefile.in
 ++++ b/doc/misc/Makefile.in
 +@@ -63,18 +63,14 @@ INSTALL_DATA =
 + MAKEINFO = @MAKEINFO@
 + MAKEINFO_OPTS = --force -I$(emacsdir)
 + 
 ++# Debian: moved DFSG incompatible files to emacs*-common-non-dfsg
 ++# package (see /usr/share/doc/emacs*-common/copyright).
 ++
 + ## On MS Windows, efaq-w32; otherwise blank.
 + DOCMISC_W32 = @DOCMISC_W32@
 + 
 + ## Info files to build and install on all platforms.
 +-INFO_COMMON = auth autotype bovine calc ccmode cl dbus dired-x               \
 +-     ebrowse ede ediff edt efaq eglot eieio emacs-gnutls             \
 +-     emacs-mime epa erc ert eshell eudc eww flymake forms gnus       \
 +-     htmlfontify idlwave ido info.info mairix-el message mh-e        \
 +-     modus-themes newsticker nxml-mode octave-mode org pcl-cvs pgg   \
 +-     rcirc reftex remember sasl sc semantic ses sieve smtpmail       \
 +-     speedbar srecode todo-mode tramp transient url use-package      \
 +-     vhdl-mode vip viper vtable widget wisent woman
 ++INFO_COMMON = efaq transient
 + 
 + ## Info files to install on current platform.
 + INFO_INSTALL = $(INFO_COMMON) $(DOCMISC_W32)
 +@@ -161,9 +157,6 @@ define info_template
 +  $(1): $$(buildinfodir)/$(1).info
 + endef
 + 
 +-## "info" is already taken.
 +-info.info: $(buildinfodir)/info.info
 +-
 + $(foreach ifile,$(filter-out info.info,$(INFO_TARGETS)),$(eval $(call info_template,$(ifile))))
 + 
 + 
 +@@ -186,21 +179,11 @@ info.info:
 + ## Extra dependencies.
 + 
 + ## FIXME Updating this list manually is unreliable.
 +-need_emacsver = calc cl dired-x efaq efaq-w32 erc forms ido  \
 +-     newsticker reftex remember use-package woman
 ++need_emacsver = efaq efaq-w32
 + need_emacsver_prefix = $(addprefix ${buildinfodir}/,${need_emacsver})
 + 
 + $(need_emacsver_prefix:=.info) $(need_emacsver:=.dvi) $(need_emacsver:=.pdf) $(need_emacsver:=.html) : ${emacsdir}/emacsver.texi
 + 
 +-$(buildinfodir)/gnus.info gnus.html: ${srcdir}/gnus-faq.texi
 +-
 +-$(buildinfodir)/semantic.info semantic.dvi semantic.pdf semantic.html: ${srcdir}/sem-user.texi
 +-
 +-
 +-## Please can we just rename cc-mode.texi to ccmode.texi...
 +-${buildinfodir}/ccmode.info: \
 +-  ${srcdir}/cc-mode.texi ${gfdl} ${style} | ${buildinfodir}
 +-     $(AM_V_GEN)$(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ $<
 + 
 + ## efaq, efaq_w32 do not depend on gfdl.
 + ## Maybe we can use .SECONDEXPANSION for this.
 +@@ -216,23 +199,6 @@ efaq%.pdf:
 + efaq%.html: ${srcdir}/efaq%.texi
 +      $(AM_V_GEN)$(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ $<
 + 
 +-${buildinfodir}/emacs-mime.info emacs-mime.html: EXTRA_OPTS = --enable-encoding
 +-
 +-gnus_deps = ${srcdir}/gnus.texi ${srcdir}/gnus-faq.texi ${gfdl} ${style}
 +-gnus.dvi: $(gnus_deps)
 +-     sed -e '/@iflatex/,/@end iflatex/d' $< > gnustmpdvi.texi
 +-     $(ENVADD) $(TEXI2DVI) gnustmpdvi.texi
 +-     cp gnustmpdvi.dvi $@
 +-     rm gnustmpdvi.*
 +-
 +-gnus.pdf: $(gnus_deps)
 +-     sed -e '/@iflatex/,/@end iflatex/d' $< > gnustmppdf.texi
 +-     $(ENVADD) $(TEXI2PDF) gnustmppdf.texi
 +-     cp gnustmppdf.pdf $@
 +-     rm gnustmppdf.*
 +-
 +-${buildinfodir}/tramp.info tramp.html: ${srcdir}/trampver.texi
 +-
 + 
 + abs_top_builddir = @abs_top_builddir@
 + 
 +diff --git a/lisp/help.el b/lisp/help.el
- index 1d87c2209c8..3fa0b65488f 100644
++index 5cd97897767..7685be11c60 100644
 +--- a/lisp/help.el
 ++++ b/lisp/help.el
 +@@ -523,6 +523,14 @@ view-help-file
 +   (goto-address-mode 1)
 +   (goto-char (point-min)))
 + 
 ++(defun debian-expand-file-name-dfsg (filename)
 ++  "Apply expand-file-name to FILENAME.
 ++If expand-file-name does not find a file, append `.dfsg' and try again."
 ++  (let ((file (expand-file-name filename data-directory)))
 ++    (if (file-exists-p file)
 ++        file
 ++      (expand-file-name (concat file ".dfsg") data-directory))))
 ++
 + (defun describe-distribution ()
 +   "Display info on how to obtain the latest version of GNU Emacs."
 +   (interactive)
index 58c1c0bd6549f6f09d8fbbe5ad17b35f2aff02bf,0000000000000000000000000000000000000000..ef5d38ec4614c4bc05b6a795512f4f34300503c0
mode 100644,000000..100644
--- /dev/null
@@@ -1,29 -1,0 +1,29 @@@
- From 776918ad7edcd01f3f89ea1f0188dde9c3d3375b Mon Sep 17 00:00:00 2001
++From 3f403c3e03b3e57aaca6fa54fbcf4ebef648492e Mon Sep 17 00:00:00 2001
 +From: Rob Browning <rlb@defaultvalue.org>
 +Date: Mon, 4 Apr 2011 22:46:25 -0500
 +Subject: Adjust documentation references for Debian
 +
 +Various documentation references have been adjusted for Debian.
 +
 +References to /usr/local/... have been changed to /usr/... as
 +appropriate, etc.
 +---
 + etc/NEWS | 5 +++++
 + 1 file changed, 5 insertions(+)
 +
 +diff --git a/etc/NEWS b/etc/NEWS
- index 1a68e70ce48..8f0a46ced60 100644
++index dfe6c5cafe6..c715baf348a 100644
 +--- a/etc/NEWS
 ++++ b/etc/NEWS
 +@@ -15,6 +15,11 @@ in older Emacs versions.
 + You can narrow news to a specific version by calling 'view-emacs-news'
 + with a prefix argument or by typing 'C-u C-h C-n'.
 + 
 ++\f
 ++* Debian specific changes to Emacs
 ++
 ++Please see /usr/share/doc/emacs-common/README.Debian.gz.
 ++
 + \f
-  * Installation Changes in Emacs 30.1
-  
++ * Changes in Emacs 30.2
++ Emacs 30.2 is a bug-fix release with no new features.
index 86a05e00f361882f395895bde3f3cef51df6a15a,0000000000000000000000000000000000000000..4b6556d93022639cdcb19266d218a33299c9c47e
mode 100644,000000..100644
--- /dev/null
@@@ -1,26 -1,0 +1,26 @@@
- From 67f2e30419cc5479a724438c67f7a561f1482f3d Mon Sep 17 00:00:00 2001
++From 4339826e9287d35599c0d085d16723da451e6fee Mon Sep 17 00:00:00 2001
 +From: Rob Browning <rlb@defaultvalue.org>
 +Date: Mon, 4 Apr 2011 22:46:28 -0500
 +Subject: Modify the output of (version) to indicate Debian modifications
 +
 +The output of (version) has been modified to indicate Debian modifications.
 +
 +Author: Rob Browning <rlb@defaultvalue.org>
 +Added-by: Rob Browning <rlb@defaultvalue.org>
 +---
 + lisp/version.el | 2 +-
 + 1 file changed, 1 insertion(+), 1 deletion(-)
 +
 +diff --git a/lisp/version.el b/lisp/version.el
 +index 1f2fdb38fc7..337c4357933 100644
 +--- a/lisp/version.el
 ++++ b/lisp/version.el
 +@@ -103,7 +103,7 @@ emacs-version
 + to the system configuration; look at `system-configuration' instead."
 +   (interactive "P")
 +   (let ((version-string
 +-         (format "GNU Emacs %s (build %s, %s%s%s%s)%s"
 ++         (format "GNU Emacs %s (build %s, %s%s%s%s)%s, modified by Debian"
 +                  emacs-version
 +                  emacs-build-number
 +               system-configuration
index 17613974fed084a6d64d65d44c89cb9c5583733b,0000000000000000000000000000000000000000..9cb0972ea570f95c345546bc315c373a009d58be
mode 100644,000000..100644
--- /dev/null
@@@ -1,24 -1,0 +1,24 @@@
- From a67a63533c85ea632331b85b65df8cf6ce574aa0 Mon Sep 17 00:00:00 2001
++From 6d66874686f44e5e6d929c1cfa7a508caeac2ab9 Mon Sep 17 00:00:00 2001
 +From: Rob Browning <rlb@defaultvalue.org>
 +Date: Tue, 21 Oct 2014 19:10:17 -0500
 +Subject: Don't try to build src/macuvs.h (via IVD_Sequences.txt)
 +
 +These are OS X specific, and were removed for now, due to uncertainty
 +over the licensing.
 +---
 + admin/unidata/Makefile.in | 2 +-
 + 1 file changed, 1 insertion(+), 1 deletion(-)
 +
 +diff --git a/admin/unidata/Makefile.in b/admin/unidata/Makefile.in
 +index 223d3fe9cab..d61086f2206 100644
 +--- a/admin/unidata/Makefile.in
 ++++ b/admin/unidata/Makefile.in
 +@@ -43,7 +43,7 @@ unifiles =
 + 
 + .PHONY: all
 + 
 +-all: ${top_srcdir}/src/macuvs.h ${unifiles} ${unidir}/charscript.el \
 ++all: ${unifiles} ${unidir}/charscript.el \
 +   ${unidir}/charprop.el ${unidir}/emoji-zwj.el ${unidir}/emoji-labels.el \
 +   ${unidir}/uni-scripts.el ${unidir}/uni-confusable.el \
 +   ${unidir}/idna-mapping.el
index 9cccb1890b19e7ab70f769c3402f210e9e1bdb05,0000000000000000000000000000000000000000..bd000573a203a20e46f58e08ef16eae09e1c44a3
mode 100644,000000..100644
--- /dev/null
@@@ -1,40 -1,0 +1,40 @@@
- From 2968c8004590ff6e233f6e3b102b99cee2ec6936 Mon Sep 17 00:00:00 2001
++From 671d57a0af7bc24f0189cd91456a55c2b05f5866 Mon Sep 17 00:00:00 2001
 +From: Rob Browning <rlb@defaultvalue.org>
 +Date: Mon, 10 Oct 2016 17:35:56 -0500
 +Subject: Kill gpg agent in package-test.el to avoid a race
 +
 +package-test.el should no longer fail during clean up.
 +
 +* Previously a delete-directories call raced with the gpg agent's own
 +  cleanup process (presumably triggered by the first deletion of one of
 +  the agent's sockets).  As a result, it looks like the agent might
 +  delete one of its sockets after delete-directories had decided to
 +  delete the socket, but before it made the attempt, causing an
 +  exception.
 +
 +* To fix the problem, explicitly ask gpg-connect-agent to kill the agent
 +  before attempting to delete the gnupg home directory, and then delete
 +  via "rm -rf" to ignore any vanishing files.
 +---
 + test/lisp/emacs-lisp/package-tests.el | 8 ++++++++
 + 1 file changed, 8 insertions(+)
 +
 +diff --git a/test/lisp/emacs-lisp/package-tests.el b/test/lisp/emacs-lisp/package-tests.el
 +index f13ac3fa8d8..decced03cdf 100644
 +--- a/test/lisp/emacs-lisp/package-tests.el
 ++++ b/test/lisp/emacs-lisp/package-tests.el
 +@@ -161,6 +161,14 @@ with-package-test
 +                (delete-file
 +                 (expand-file-name f package-test-archive-upload-base))))
 +            (delete-directory package-test-archive-upload-base))
 ++         (call-process "gpg-connect-agent" nil nil nil
 ++                       "--homedir" (concat package-test-user-dir "/gnupg")
 ++                       "--no-autostart"
 ++                       "killagent" "/bye")
 ++         ;; Call "rm -rf" instead of delete-directory so that it won't
 ++         ;; choke if the gpg-agent sockets disappear during the
 ++         ;; recursive traversal.
 ++         (call-process "rm" nil nil nil "-r" package-test-user-dir)
 + 
 +          (when (and (boundp 'package-test-archive-upload-base)
 +                     (file-directory-p package-test-archive-upload-base))
index d2c287f7db307d62620b7b8974d00bf56154863d,0000000000000000000000000000000000000000..284d9a957d534a921d3d7025cd6ee700823c43a3
mode 100644,000000..100644
--- /dev/null
@@@ -1,74 -1,0 +1,74 @@@
- From d51e992d42718c12d427f9d3d7004e8143c5ceea Mon Sep 17 00:00:00 2001
++From 8e418c23a690f01723ae828bf580d0354833f26b Mon Sep 17 00:00:00 2001
 +From: Rob Browning <rlb@defaultvalue.org>
 +Date: Sun, 16 Dec 2018 17:13:36 -0600
 +Subject: Mark vc-bzr-test-fauilt-bzr-autoloads as unstable for now
 +
 +Currently the test fails like this:
 +
 +  Running 3 tests (2018-12-17 12:17:43-0600)
 +     passed  1/3  vc-bzr-test-bug9726
 +  Mark set
 +  Press C-c C-c when you are done editing.
 +  Enter a change comment.  Type C-c C-c when done
 +     passed  2/3  vc-bzr-test-bug9781
 +  Falling back on "slow" status detection ((file-missing "Opening input file" "No such file or directory" "/tmp/vc-bzr-testVlgmsb/bzr/.bzr/checkout/dirstate"))
 +  Error: (error "Running bzr status --no-classify loaddefs.el...FAILED (status 3)")
 +  Warnings in `bzr' output: bzr: ERROR: invalid header line: ''
 +
 +  Error: (error "Running bzr status --no-classify loaddefs.el...FAILED (status 3)")
 +  Warnings in `bzr' output: bzr: ERROR: invalid header line: ''
 +
 +  Test vc-bzr-test-faulty-bzr-autoloads backtrace:
 +    logand(nil 128)
 +    vc-mode-line("/tmp/vc-bzr-testVlgmsb/bzr/loaddefs.el" Bzr)
 +    vc-refresh-state()
 +    run-hooks(find-file-hook)
 +    after-find-file(t t)
 +    find-file-noselect-1(#<buffer loaddefs.el> "/tmp/vc-bzr-testVlgmsb/b
 +    find-file-noselect("/tmp/vc-bzr-testVlgmsb/bzr/loaddefs.el")
 +    autoload-find-generated-file()
 +    update-directory-autoloads("/tmp/vc-bzr-testVlgmsb/bzr/")
 +    (progn (update-directory-autoloads default-directory) t)
 +    (setq value-35 (progn (update-directory-autoloads default-directory)
 +    (unwind-protect (setq value-35 (progn (update-directory-autoloads de
 +    (if (unwind-protect (setq value-35 (progn (update-directory-autoload
 +    (let (form-description-36) (if (unwind-protect (setq value-35 (progn
 +    (let ((value-35 (gensym "ert-form-evaluation-aborted-"))) (let (form
 +    (progn (call-process vc-bzr-program nil nil nil "init") (let ((temp-
 +    (unwind-protect (progn (call-process vc-bzr-program nil nil nil "ini
 +    (let* ((homedir (make-temp-file "vc-bzr-test" t)) (bzrdir (expand-fi
 +    (lambda nil (let* ((fn-30 (function executable-find)) (args-31 (cond
 +    ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
 +    ert-run-test(#s(ert-test :name vc-bzr-test-faulty-bzr-autoloads :doc
 +    ert-run-or-rerun-test(#s(ert--stats :selector (not (or (tag :expensi
 +    ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
 +    ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
 +    ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
 +    eval((ert-run-tests-batch-and-exit '(not (or (tag :expensive-test) (
 +    command-line-1(("-L" ":/home/locke/tmp/main-26.1/debian/build-src/te
 +    command-line()
 +    normal-top-level()
 +  Test vc-bzr-test-faulty-bzr-autoloads condition:
 +      (wrong-type-argument number-or-marker-p nil)
 +     FAILED  3/3  vc-bzr-test-faulty-bzr-autoloads
 +
 +  Ran 3 tests, 2 results as expected, 1 unexpected (2018-12-17 12:17:46-0600)
 +
 +  1 unexpected results:
 +     FAILED  vc-bzr-test-faulty-bzr-autoloads
 +---
 + test/lisp/vc/vc-bzr-tests.el | 1 +
 + 1 file changed, 1 insertion(+)
 +
 +diff --git a/test/lisp/vc/vc-bzr-tests.el b/test/lisp/vc/vc-bzr-tests.el
 +index 487dc66cb73..a1d2b056850 100644
 +--- a/test/lisp/vc/vc-bzr-tests.el
 ++++ b/test/lisp/vc/vc-bzr-tests.el
 +@@ -119,6 +119,7 @@ vc-bzr-test-bug9781
 + ;; https://lists.gnu.org/r/help-gnu-emacs/2012-04/msg00145.html
 + (ert-deftest vc-bzr-test-faulty-bzr-autoloads ()
 +   "Test we can generate autoloads in a bzr directory when bzr is faulty."
 ++  :tags '(:unstable)
 +   (skip-unless (executable-find vc-bzr-program))
 +   (ert-with-temp-directory homedir
 +     (let* ((bzrdir (expand-file-name "bzr" homedir))
index e7ed83e16c7f3994921cf4ce2d53b1e750304a30,0000000000000000000000000000000000000000..c1577bfe0905fe05645362581dc34d7a72cd6717
mode 100644,000000..100644
--- /dev/null
@@@ -1,47 -1,0 +1,47 @@@
- From 58ea833d44d881fa30f99946b2b51a82648623c3 Mon Sep 17 00:00:00 2001
++From 6f5456e2da7443121b860b834b1e91a3c92340e9 Mon Sep 17 00:00:00 2001
 +From: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
 +Date: Sat, 24 Sep 2022 13:37:18 -0500
 +Subject: pdumper: set DUMP_RELOC_ALIGNMENT_BITS=1 for m68k
 +
 +Before the change builds would fail like this:
 +
 +  (...)
 +  Loading /<<BUILDDIR>>/emacs-27.1+1/debian/build-src/lisp/vc/vc-hooks.el (source)...
 +  Loading /<<BUILDDIR>>/emacs-27.1+1/debian/build-src/lisp/vc/ediff-hook.el (source)...
 +  Loading /<<BUILDDIR>>/emacs-27.1+1/debian/build-src/lisp/uniquify.el (source)...
 +  Loading /<<BUILDDIR>>/emacs-27.1+1/debian/build-src/lisp/electric.el (source)...
 +  Loading /<<BUILDDIR>>/emacs-27.1+1/debian/build-src/lisp/emacs-lisp/eldoc.el (source)...
 +  Loading /<<BUILDDIR>>/emacs-27.1+1/debian/build-src/lisp/cus-start.el (source)...
 +  Loading /<<BUILDDIR>>/emacs-27.1+1/debian/build-src/lisp/tooltip.el (source)...
 +  Finding pointers to doc strings...
 +  Finding pointers to doc strings...done
 +  Dumping under the name bootstrap-emacs.pdmp
 +  dumping fingerprint: 7b5c59c589dc151eb1e4269bd83fbe809616b5cb9bb5c80014d5b560b391dfb6
 +  dump relocation out of range
 +
 +[rlb@defaultvalue.org: create commit message]
 +
 +Origin: debian
 +Bug: https://bugs.gnu.org/44531
 +Bug-Debian: http://bugs.debian.org/1019130
 +Forwarded: not-needed
 +---
 + src/pdumper.c | 4 ++++
 + 1 file changed, 4 insertions(+)
 +
 +diff --git a/src/pdumper.c b/src/pdumper.c
 +index bc7cfffeca2..6e4770a5ffd 100644
 +--- a/src/pdumper.c
 ++++ b/src/pdumper.c
 +@@ -263,7 +263,11 @@ emacs_reloc_set_type (struct emacs_reloc *reloc,
 + enum
 +   {
 +    DUMP_RELOC_TYPE_BITS = 5,
 ++#ifdef __mc68000__
 ++   DUMP_RELOC_ALIGNMENT_BITS = 1,
 ++#else
 +    DUMP_RELOC_ALIGNMENT_BITS = 2,
 ++#endif
 + 
 +    /* Minimum alignment required by dump file format.  */
 +    DUMP_RELOCATION_ALIGNMENT = 1 << DUMP_RELOC_ALIGNMENT_BITS,
index ff5d59e2a6bcca9131f789dda1d23dfd082044ca,0000000000000000000000000000000000000000..9022cd6b751d70b0281dc11df921b562a7f4682e
mode 100644,000000..100644
--- /dev/null
@@@ -1,48 -1,0 +1,48 @@@
- From 4be72b0cc991c9a5d441437d314f7657b1f46930 Mon Sep 17 00:00:00 2001
++From c55f2e81e69277e16c5f562f39907847bc87daa3 Mon Sep 17 00:00:00 2001
 +From: Sean Whitton <spwhitton@spwhitton.name>
 +Date: Tue, 15 Nov 2022 15:54:41 -0700
 +Subject: Mark test-undo-region as unstable
 +
 +It is repeatedly failing on Debian's arch:all autobuilders, though
 +seemingly nowhere else:
 +
 +     passed  40/44  simple-transpose-subr (0.000396 sec)
 +  Test test-undo-region backtrace:
 +    signal(ert-test-failed (((should (= (length (delq nil (undo-make-sel
 +    ert-fail(((should (= (length (delq nil (undo-make-selective-list 1 9
 +    #f(compiled-function () #<bytecode 0x52f126616d2cdbd>)()
 +    ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
 +    ert-run-test(#s(ert-test :name test-undo-region :documentation nil :
 +    ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
 +    ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
 +    ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
 +    ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
 +    command-line-1(("-L" ":/<<PKGBUILDDIR>>/debian/build
 +    command-line()
 +    normal-top-level()
 +  Test test-undo-region condition:
 +      (ert-test-failed
 +       ((should
 +         (=
 +      (length ...)
 +      2))
 +        :form
 +        (= 3 2)
 +        :value nil))
 +     FAILED  41/44  test-undo-region (0.000185 sec)
 +---
 + test/lisp/simple-tests.el | 1 +
 + 1 file changed, 1 insertion(+)
 +
 +diff --git a/test/lisp/simple-tests.el b/test/lisp/simple-tests.el
 +index e3c556aac72..bc2350d3427 100644
 +--- a/test/lisp/simple-tests.el
 ++++ b/test/lisp/simple-tests.el
 +@@ -1029,6 +1029,7 @@ simple-tests-shell-command-dont-erase-buffer
 +         (should (= (point) (alist-get shell-command-dont-erase-buffer expected-point)))))))
 + 
 + (ert-deftest test-undo-region ()
 ++  :tags '(:unstable)
 +   (with-temp-buffer
 +     (insert "This is a test\n")
 +     (goto-char (point-min))
index 660ce79cd8b7a0207a4e8615e2d2f6f2a9c0c7ae,0000000000000000000000000000000000000000..7887184aba5eecaa1152735ed8c9f79bbd94ffc5
mode 100644,000000..100644
--- /dev/null
@@@ -1,46 -1,0 +1,46 @@@
- From d2bba6be1a99de7a6b7cb6afee6ff3d1c09db8df Mon Sep 17 00:00:00 2001
++From fb12f75a965b0dbff009c4fb74e5f6ae091c2dbc Mon Sep 17 00:00:00 2001
 +From: Sean Whitton <spwhitton@spwhitton.name>
 +Date: Tue, 15 Nov 2022 16:26:59 -0700
 +Subject: Mark flaky test process-tests/multiple-threads-waiting as unstable
 +
 +It times out:
 +
 +     passed  22/28  process-tests/fd-setsize-no-crash/make-serial-process (0.021449 sec)
 +  make[5]: *** [Makefile:182: src/process-tests.log] Error 134
 +    GEN      src/regex-emacs-tests.log
 +    GEN      src/search-tests.log
 +    GEN      src/syntax-tests.log
 +    GEN      src/textprop-tests.log
 +    GEN      src/thread-tests.log
 +    GEN      src/timefns-tests.log
 +    GEN      src/undo-tests.log
 +    GEN      src/xdisp-tests.log
 +    GEN      src/xfaces-tests.log
 +    GEN      src/xml-tests.log
 +  make[5]: Leaving directory '/<<PKGBUILDDIR>>/debian/build-gtk/test'
 +  make[4]: [Makefile:335: check-doit] Error 2 (ignored)
 +
 +  SUMMARY OF TEST RESULTS
 +  -----------------------
 +  Files examined: 375
 +  Ran 5408 tests, 28 failed to run, 5273 results as expected, 0 unexpected, 135 skipped
 +  1 files did not finish:
 +    src/process-tests.log
 +  make[4]: *** [Makefile:336: check-doit] Error 2
 +---
 + test/src/process-tests.el | 2 +-
 + 1 file changed, 1 insertion(+), 1 deletion(-)
 +
 +diff --git a/test/src/process-tests.el b/test/src/process-tests.el
 +index a24a35ed6bf..a96f348448a 100644
 +--- a/test/src/process-tests.el
 ++++ b/test/src/process-tests.el
 +@@ -895,7 +895,7 @@ process-tests/sentinel-with-multiple-processes
 +                            (list (list process "finished\n"))))))))))
 + 
 + (ert-deftest process-tests/multiple-threads-waiting ()
 +-  :tags (if (getenv "EMACS_EMBA_CI") '(:unstable))
 ++  :tags '(:unstable)
 +   (skip-unless (fboundp 'make-thread))
 +   (with-timeout (60 (ert-fail "Test timed out"))
 +     (process-tests--with-processes processes
index 18ea8be524899daa17f14b501470bf4d568762e8,0000000000000000000000000000000000000000..976d0fa22f5d59bf55010c468daed4c60a97b3a2
mode 100644,000000..100644
--- /dev/null
@@@ -1,145 -1,0 +1,145 @@@
- From 8fb2d6e3307efb15124dc21837bf6039aa6d7fdf Mon Sep 17 00:00:00 2001
++From 369dfc21deaa523887dc4d6cb4dd654de8d1087d Mon Sep 17 00:00:00 2001
 +From: Lars Ingebrigtsen <larsi@gnus.org>
 +Date: Mon, 3 Oct 2022 15:26:04 +0200
 +Subject: Add 'inhibit-native-compilation'
 +
 +The following upstream patch has been backported:
 +
 +  Add new variable 'inhibit-native-compilation'
 +
 +  * lisp/startup.el (normal-top-level): Set
 +  inhibit-native-compilation from environment variable.
 +
 +  * lisp/emacs-lisp/comp.el (comp-trampoline-compile): Don't write
 +  trampolines to disk.
 +
 +  * lisp/progmodes/elisp-mode.el
 +  (emacs-lisp-native-compile-and-load): Adjust.
 +
 +  * src/comp.c (syms_of_comp): New variable
 +  inhibit-native-compilation.
 +  (maybe_defer_native_compilation): Use it.
 +
 +Origin: upstream, commit: 5fec9182dbeffa88cef6651d8c798ef9665d6681
 +Forwarded: not-needed
 +---
 + lisp/emacs-lisp/comp.el | 47 ++++++++++++++++++++++-------------------
 + lisp/startup.el         |  7 ++++--
 + src/comp.c              |  7 ++++++
 + 3 files changed, 37 insertions(+), 24 deletions(-)
 +
 +diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el
- index e2abd6dbc5b..d1182b35cfe 100644
++index 2bc8b996622..e86dbc3c7cf 100644
 +--- a/lisp/emacs-lisp/comp.el
 ++++ b/lisp/emacs-lisp/comp.el
 +@@ -3357,28 +3357,31 @@ comp--make-lambda-list-from-subr
 + 
 + (defun comp--trampoline-abs-filename (subr-name)
 +   "Return the absolute filename for a trampoline for SUBR-NAME."
 +-  (cl-loop
 +-   with dirs = (if (stringp native-comp-enable-subr-trampolines)
 +-                   (list (expand-file-name native-comp-enable-subr-trampolines
 +-                                           invocation-directory))
 +-                 (if native-compile-target-directory
 +-                     (list (expand-file-name comp-native-version-dir
 +-                                             native-compile-target-directory))
 +-                   (comp-eln-load-path-eff)))
 +-   with rel-filename = (comp-trampoline-filename subr-name)
 +-   for dir in dirs
 +-   for abs-filename = (expand-file-name rel-filename dir)
 +-   unless (file-exists-p dir)
 +-     do (ignore-errors
 +-          (make-directory dir t)
 +-          (cl-return abs-filename))
 +-   when (file-writable-p abs-filename)
 +-     do (cl-return abs-filename)
 +-   ;; Default to some temporary directory if no better option was
 +-   ;; found.
 +-   finally (cl-return
 +-            (make-temp-file (file-name-sans-extension rel-filename) nil ".eln"
 +-                            nil))))
 ++  ;; If we've disabled nativecomp, don't write the trampolines to
 ++  ;; the eln cache (but create them).
 ++  (and (not inhibit-native-compilation)
 ++       (cl-loop
 ++     with dirs = (if (stringp native-comp-enable-subr-trampolines)
 ++                     (list (expand-file-name native-comp-enable-subr-trampolines
 ++                                             invocation-directory))
 ++                      (if native-compile-target-directory
 ++                       (list (expand-file-name comp-native-version-dir
 ++                                               native-compile-target-directory))
 ++                     (comp-eln-load-path-eff)))
 ++     with rel-filename = (comp-trampoline-filename subr-name)
 ++     for dir in dirs
 ++     for abs-filename = (expand-file-name rel-filename dir)
 ++     unless (file-exists-p dir)
 ++     do (ignore-errors
 ++             (make-directory dir t)
 ++             (cl-return abs-filename))
 ++     when (file-writable-p abs-filename)
 ++     do (cl-return abs-filename)
 ++     ;; Default to some temporary directory if no better option was
 ++     ;; found.
 ++     finally (cl-return
 ++              (make-temp-file (file-name-sans-extension rel-filename) nil ".eln"
 ++                              nil)))))
 + 
 + ;; Called from comp-run.el
 + ;;;###autoload
 +diff --git a/lisp/startup.el b/lisp/startup.el
 +index e07e6515991..e5d6bd87cac 100644
 +--- a/lisp/startup.el
 ++++ b/lisp/startup.el
 +@@ -528,7 +528,7 @@ startup--xdg-or-homedot
 +      (t emacs-d-dir))))
 + 
 + (defvar native-comp-eln-load-path)
 +-(defvar native-comp-jit-compilation)
 ++(defvar inhibit-native-compilation)
 + (defvar native-comp-enable-subr-trampolines)
 + 
 + (defvar startup--original-eln-load-path nil
 +@@ -589,6 +589,9 @@ normal-top-level
 +     (funcall 'android-enumerate-fonts)
 +     (setq android-fonts-enumerated t))
 + 
 ++  ;; Allow disabling automatic .elc->.eln processing.
 ++  (setq inhibit-native-compilation (getenv "EMACS_INHIBIT_NATIVE_COMPILATION"))
 ++
 +   (if command-line-processed
 +       (message internal--top-level-message)
 +     (setq command-line-processed t)
 +@@ -607,7 +610,7 @@ normal-top-level
 +         ;; in this session.  This is necessary if libgccjit is not
 +         ;; available on MS-Windows, but Emacs was built with
 +         ;; native-compilation support.
 +-        (setq native-comp-jit-compilation nil
 ++        (setq inhibit-native-compilation t
 +               native-comp-enable-subr-trampolines nil))
 + 
 +       ;; Form `native-comp-eln-load-path'.
 +diff --git a/src/comp.c b/src/comp.c
 +index e24f1afb902..ffbc2be106b 100644
 +--- a/src/comp.c
 ++++ b/src/comp.c
 +@@ -5201,6 +5201,7 @@ maybe_defer_native_compilation (Lisp_Object function_name,
 +     return;
 + 
 +   if (!native_comp_jit_compilation
 ++      || !NILP (Vinhibit_native_compilation)
 +       || noninteractive
 +       || !NILP (Vpurify_flag)
 +       || !CLOSUREP (definition)
 +@@ -5688,6 +5689,12 @@ DEFUN ("native-comp-available-p", Fnative_comp_available_p,
 + syms_of_comp (void)
 + {
 + #ifdef HAVE_NATIVE_COMP
 ++  DEFVAR_LISP ("inhibit-native-compilation", Vinhibit_native_compilation,
 ++            doc: /* If non-nil, inhibit automatic native compilation of loaded .elc files.
 ++
 ++After compilation, each function definition is updated to the native
 ++compiled one.  */);
 ++  Vinhibit_native_compilation = Qnil;
 +   DEFVAR_BOOL ("native-comp-jit-compilation", native_comp_jit_compilation,
 +     doc: /* If non-nil, compile loaded .elc files asynchronously.
 + 
index 482642646c5e0be9b9a90b7644656a1f6d6ff43d,0000000000000000000000000000000000000000..08b0f0b91047640813529b913f4434816c37ec0a
mode 100644,000000..100644
--- /dev/null
@@@ -1,100 -1,0 +1,100 @@@
- From fd55a402c8aece4abd4dd3f7247cdd81197d9cf4 Mon Sep 17 00:00:00 2001
++From a5a8d78d6b569ffc8ab5e665fca2701a715416c7 Mon Sep 17 00:00:00 2001
 +From: Lars Ingebrigtsen <larsi@gnus.org>
 +Date: Mon, 3 Oct 2022 19:49:53 +0200
 +Subject: Rename to 'inhibit-automatic-native-compilation'
 +
 +The following upstream patch has been backported:
 +
 +  Rename to inhibit-automatic-native-compilation
 +
 +  * src/comp.c (maybe_defer_native_compilation):
 +  (syms_of_comp):
 +  * lisp/startup.el (inhibit-native-compilation):
 +  (normal-top-level):
 +  * lisp/progmodes/elisp-mode.el (emacs-lisp-native-compile-and-load):
 +  * lisp/emacs-lisp/comp.el (comp-trampoline-compile): Rename
 +  inhibit-native-compilation to inhibit-automatic-native-compilation.
 +
 +Origin: upstream, commit f97993ee667f9be7589825f3a4fbc095d6944ec6
 +Forwarded: not-needed
 +---
 + lisp/emacs-lisp/comp.el | 2 +-
 + lisp/startup.el         | 7 ++++---
 + src/comp.c              | 8 +++++---
 + 3 files changed, 10 insertions(+), 7 deletions(-)
 +
 +diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el
- index d1182b35cfe..8f7a49e471c 100644
++index e86dbc3c7cf..2eb92ac224f 100644
 +--- a/lisp/emacs-lisp/comp.el
 ++++ b/lisp/emacs-lisp/comp.el
 +@@ -3359,7 +3359,7 @@ comp--trampoline-abs-filename
 +   "Return the absolute filename for a trampoline for SUBR-NAME."
 +   ;; If we've disabled nativecomp, don't write the trampolines to
 +   ;; the eln cache (but create them).
 +-  (and (not inhibit-native-compilation)
 ++  (and (not inhibit-automatic-native-compilation)
 +        (cl-loop
 +      with dirs = (if (stringp native-comp-enable-subr-trampolines)
 +                      (list (expand-file-name native-comp-enable-subr-trampolines
 +diff --git a/lisp/startup.el b/lisp/startup.el
 +index e5d6bd87cac..c6242b39e4f 100644
 +--- a/lisp/startup.el
 ++++ b/lisp/startup.el
 +@@ -528,7 +528,7 @@ startup--xdg-or-homedot
 +      (t emacs-d-dir))))
 + 
 + (defvar native-comp-eln-load-path)
 +-(defvar inhibit-native-compilation)
 ++(defvar inhibit-automatic-native-compilation)
 + (defvar native-comp-enable-subr-trampolines)
 + 
 + (defvar startup--original-eln-load-path nil
 +@@ -590,7 +590,8 @@ normal-top-level
 +     (setq android-fonts-enumerated t))
 + 
 +   ;; Allow disabling automatic .elc->.eln processing.
 +-  (setq inhibit-native-compilation (getenv "EMACS_INHIBIT_NATIVE_COMPILATION"))
 ++  (setq inhibit-automatic-native-compilation
 ++        (getenv "EMACS_INHIBIT_AUTOMATIC_NATIVE_COMPILATION"))
 + 
 +   (if command-line-processed
 +       (message internal--top-level-message)
 +@@ -610,7 +611,7 @@ normal-top-level
 +         ;; in this session.  This is necessary if libgccjit is not
 +         ;; available on MS-Windows, but Emacs was built with
 +         ;; native-compilation support.
 +-        (setq inhibit-native-compilation t
 ++        (setq inhibit-automatic-native-compilation t
 +               native-comp-enable-subr-trampolines nil))
 + 
 +       ;; Form `native-comp-eln-load-path'.
 +diff --git a/src/comp.c b/src/comp.c
 +index ffbc2be106b..f63a6f3a6d9 100644
 +--- a/src/comp.c
 ++++ b/src/comp.c
 +@@ -5201,7 +5201,7 @@ maybe_defer_native_compilation (Lisp_Object function_name,
 +     return;
 + 
 +   if (!native_comp_jit_compilation
 +-      || !NILP (Vinhibit_native_compilation)
 ++      || !NILP (Vinhibit_automatic_native_compilation)
 +       || noninteractive
 +       || !NILP (Vpurify_flag)
 +       || !CLOSUREP (definition)
 +@@ -5689,12 +5689,14 @@ DEFUN ("native-comp-available-p", Fnative_comp_available_p,
 + syms_of_comp (void)
 + {
 + #ifdef HAVE_NATIVE_COMP
 +-  DEFVAR_LISP ("inhibit-native-compilation", Vinhibit_native_compilation,
 ++  DEFVAR_LISP ("inhibit-automatic-native-compilation",
 ++            Vinhibit_automatic_native_compilation,
 +             doc: /* If non-nil, inhibit automatic native compilation of loaded .elc files.
 + 
 + After compilation, each function definition is updated to the native
 + compiled one.  */);
 +-  Vinhibit_native_compilation = Qnil;
 ++  Vinhibit_automatic_native_compilation = Qnil;
 ++
 +   DEFVAR_BOOL ("native-comp-jit-compilation", native_comp_jit_compilation,
 +     doc: /* If non-nil, compile loaded .elc files asynchronously.
 + 
index 4e5e394051f5bb81ced164d0266b76d8b9ec6e83,0000000000000000000000000000000000000000..303abee90c7d72123f4b140c52c095582aad9d1d
mode 100644,000000..100644
--- /dev/null
@@@ -1,22 -1,0 +1,22 @@@
- From b2217296bf858bb96123e8a7ac3790dac45f6e42 Mon Sep 17 00:00:00 2001
++From fd5fb0bd9fea6c868378777b8b0f72615b16cb0c Mon Sep 17 00:00:00 2001
 +From: Sean Whitton <spwhitton@spwhitton.name>
 +Date: Mon, 31 Jul 2023 09:26:48 +0100
 +Subject: Patch project-vc-recognizes-git test for Debian build
 +
 +---
 + test/lisp/progmodes/project-tests.el | 2 +-
 + 1 file changed, 1 insertion(+), 1 deletion(-)
 +
 +diff --git a/test/lisp/progmodes/project-tests.el b/test/lisp/progmodes/project-tests.el
 +index cbc0bd1e8b9..2933166cf7a 100644
 +--- a/test/lisp/progmodes/project-tests.el
 ++++ b/test/lisp/progmodes/project-tests.el
 +@@ -124,7 +124,7 @@ project-vc-recognizes-git
 +          (project (project-current nil dir)))
 +     (should-not (null project))
 +     (should (string-match-p
 +-             "\\`test/lisp/progmodes/project-tests\\.elc?"
 ++             "\\`debian/build-[a-z]+/test/lisp/progmodes/project-tests\\.elc?"
 +              (file-relative-name
 +               project-tests--this-file
 +               (project-root project))))))
index 5631e7ac3b73a426e50c607d9aa446a98a38c08f,0000000000000000000000000000000000000000..4912d3da722cf5277bcae1c8562708a564f9c78b
mode 100644,000000..100644
--- /dev/null
@@@ -1,22 -1,0 +1,22 @@@
- From a725a5238a8ed6940b83931583df3c23ef5fe12b Mon Sep 17 00:00:00 2001
++From 1370645c42f09fc101a4dcb2efbcd245f3287416 Mon Sep 17 00:00:00 2001
 +From: Sean Whitton <spwhitton@spwhitton.name>
 +Date: Tue, 29 Aug 2023 09:08:55 +0100
 +Subject: Change native-comp-async-jobs-number default to 1
 +
 +---
 + lisp/emacs-lisp/comp-run.el | 2 +-
 + 1 file changed, 1 insertion(+), 1 deletion(-)
 +
 +diff --git a/lisp/emacs-lisp/comp-run.el b/lisp/emacs-lisp/comp-run.el
 +index e11ca19b0f6..4566ceaa59e 100644
 +--- a/lisp/emacs-lisp/comp-run.el
 ++++ b/lisp/emacs-lisp/comp-run.el
 +@@ -46,7 +46,7 @@ native-comp-jit-compilation-deny-list
 +   :type '(repeat regexp)
 +   :version "28.1")
 + 
 +-(defcustom native-comp-async-jobs-number 0
 ++(defcustom native-comp-async-jobs-number 1
 +   "Default number of subprocesses used for async native compilation.
 + Value of zero means to use half the number of the CPU's execution units,
 + or one if there's just one execution unit."
index 8f66db1c43aaf8e0d3ad9a112ef5c80d545aa640,0000000000000000000000000000000000000000..05e29353538efc0914a6900927d39164849c9d39
mode 100644,000000..100644
--- /dev/null
@@@ -1,24 -1,0 +1,24 @@@
- From 832bd676affa7d9a70ee20d46189cc8801db9f52 Mon Sep 17 00:00:00 2001
++From 0f5c1d06928adf74302c651375662560ca8983ac Mon Sep 17 00:00:00 2001
 +From: Sean Whitton <spwhitton@spwhitton.name>
 +Date: Thu, 28 Mar 2024 13:24:49 +0800
 +Subject: Change native-comp-async-report-warnings-errors to silent
 +
 +We have had numerous bug reports across packages about this bothering
 +users.
 +---
 + lisp/emacs-lisp/comp-run.el | 2 +-
 + 1 file changed, 1 insertion(+), 1 deletion(-)
 +
 +diff --git a/lisp/emacs-lisp/comp-run.el b/lisp/emacs-lisp/comp-run.el
 +index 4566ceaa59e..6a021ea85f6 100644
 +--- a/lisp/emacs-lisp/comp-run.el
 ++++ b/lisp/emacs-lisp/comp-run.el
 +@@ -54,7 +54,7 @@ native-comp-async-jobs-number
 +   :risky t
 +   :version "28.1")
 + 
 +-(defcustom native-comp-async-report-warnings-errors t
 ++(defcustom native-comp-async-report-warnings-errors 'silent
 +   "Whether to report warnings and errors from asynchronous native compilation.
 + 
 + When native compilation happens asynchronously, it can produce
index e00f14411fa8003eae3c802d6bd32e3d117d1608,0000000000000000000000000000000000000000..6239931269e7ed7a079d983e987ebbe9bcef26fb
mode 100644,000000..100644
--- /dev/null
@@@ -1,54 -1,0 +1,54 @@@
- From e870e02836cb8e7718611f24a0a47cd49782c574 Mon Sep 17 00:00:00 2001
++From 0c2429300e554be948fc5182cb88ae4cd32d883d Mon Sep 17 00:00:00 2001
 +From: Rob Browning <rlb@defaultvalue.org>
 +Date: Sat, 29 Jun 2024 11:01:56 -0500
 +Subject: Mark dired-test-bug27243-02 as unstable for now
 +
 +This appears to be a known issue:
 +
 +  https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27243#64
 +  https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27243#115
 +
 +Sample failure:
 +
 +  Test dired-test-bug27243-02 backtrace:
 +    signal(ert-test-failed (((should (eq (point) pt1)) :form (eq 176 179
 +    ert-fail(((should (eq (point) pt1)) :form (eq 176 179) :value nil))
 +    #f(compiled-function () #<bytecode -0xdd3f9b8b64b2928>)()
 +    ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
 +    ert-run-test(#s(ert-test :name dired-test-bug27243-02 :documentation
 +    ert-run-or-rerun-test(#s(ert--stats :selector (not ...) :tests [...
 +    ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
 +    ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
 +    ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
 +    command-line-1(("-L" ":/<<PKGBUILDDIR>>/debian/
 +    command-line()
 +    normal-top-level()
 +  Test dired-test-bug27243-02 condition:
 +      (ert-test-failed
 +       ((should
 +         (eq
 +          (point)
 +          pt1))
 +        :form
 +        (eq 176 179)
 +        :value nil))
 +     FAILED   5/16  dired-test-bug27243-02 (0.010115 sec) at ../../build-src/test/lisp/dired-tests.el:189
 +
 +Bug: https://debbugs.gnu.org/27243
 +Forwarded: not-needed
 +---
 + test/lisp/dired-tests.el | 1 +
 + 1 file changed, 1 insertion(+)
 +
 +diff --git a/test/lisp/dired-tests.el b/test/lisp/dired-tests.el
 +index c9a1ff4249b..6dee47d141d 100644
 +--- a/test/lisp/dired-tests.el
 ++++ b/test/lisp/dired-tests.el
 +@@ -188,6 +188,7 @@ dired-test-bug27243-01
 + 
 + (ert-deftest dired-test-bug27243-02 ()
 +   "Test for https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27243#28 ."
 ++  :tags '(:unstable)
 +   (ert-with-temp-directory test-dir
 +     (let ((dired-auto-revert-buffer t)
 +           (dired-free-space nil)
index d96ecef2bc12a59131ab63b9595245c0aeef6ed4,0000000000000000000000000000000000000000..39c7bbd00eb0ff5fd85e4fe85af2a597778e8463
mode 100644,000000..100644
--- /dev/null
@@@ -1,24 -1,0 +1,24 @@@
- From 3f51bc789a4a3703a742231a807ec27413e8fecb Mon Sep 17 00:00:00 2001
++From a8d8daffe8c886f21e531ed83b6c0776a8d572ec Mon Sep 17 00:00:00 2001
 +From: Xiyue Deng <manphiz@gmail.com>
 +Date: Mon, 27 Jan 2025 23:23:37 -0800
 +Subject: Fix eldoc warning in patch adding debian-emacs-flavor
 +
 +Forwarded: not-needed
 +Closes: #1095133
 +---
 + lisp/startup.el | 2 +-
 + 1 file changed, 1 insertion(+), 1 deletion(-)
 +
 +diff --git a/lisp/startup.el b/lisp/startup.el
 +index c6242b39e4f..a17a6d0d959 100644
 +--- a/lisp/startup.el
 ++++ b/lisp/startup.el
 +@@ -443,7 +443,7 @@ tutorial-directory
 + 
 + (defconst debian-emacs-flavor 'emacs
 +   "A symbol representing the particular debian flavor of emacs running.
 +-Something like 'emacs, 'xemacs21, etc.")
 ++Something like \\='emacs, \\='xemacs21, etc.")
 + 
 + (defun normal-top-level-add-subdirs-to-load-path ()
 +   "Recursively add all subdirectories of `default-directory' to `load-path'.
index 9b1597eaf68e94eed2d1eef93f3ff8ea14d1acbf,0000000000000000000000000000000000000000..0861659071f0ce3f26f1ac827a2fc935d1356693
mode 100644,000000..100644
--- /dev/null
@@@ -1,22 -1,0 +1,22 @@@
- From 2be074322744c69ff73ea5e7225c60be95ebfc32 Mon Sep 17 00:00:00 2001
++From d212549b7a118c0f08d806bf288810faba25f3a3 Mon Sep 17 00:00:00 2001
 +From: Sean Whitton <spwhitton@spwhitton.name>
 +Date: Tue, 25 Feb 2025 09:19:38 +0800
 +Subject: Boost BASE_PURESIZE in attempt to fix build on 32-bit archs
 +
 +---
 + src/puresize.h | 2 +-
 + 1 file changed, 1 insertion(+), 1 deletion(-)
 +
 +diff --git a/src/puresize.h b/src/puresize.h
 +index f2576666a66..be727ba68cd 100644
 +--- a/src/puresize.h
 ++++ b/src/puresize.h
 +@@ -47,7 +47,7 @@ #define SITELOAD_PURESIZE_EXTRA 0
 + #endif
 + 
 + #ifndef BASE_PURESIZE
 +-#define BASE_PURESIZE (3400000 + SYSTEM_PURESIZE_EXTRA + SITELOAD_PURESIZE_EXTRA)
 ++#define BASE_PURESIZE (4500000 + SYSTEM_PURESIZE_EXTRA + SITELOAD_PURESIZE_EXTRA)
 + #endif
 + 
 + /* Increase BASE_PURESIZE by a ratio depending on the machine's word size.  */
index c1e28f16ba6870f5df25af222ae48db06bd99157,0000000000000000000000000000000000000000..c53ed4f6f63cec635d847be6f9c067e7c22d515a
mode 100644,000000..100644
--- /dev/null
@@@ -1,27 -1,0 +1,27 @@@
- From 2c784d2bc319a00160f8c911d00d1a4978e2ac22 Mon Sep 17 00:00:00 2001
++From f0d610eba21df7de899741b0adbd881d9a1f9d89 Mon Sep 17 00:00:00 2001
 +From: Sean Whitton <spwhitton@spwhitton.name>
 +Date: Wed, 26 Feb 2025 16:13:44 +0800
 +Subject: Disable server-tests/server-force-stop/keeps-frames on riscv64
 +
 +This test often hangs on the Debian buildds.
 +It simply fails on a porterbox, at least for the emacs-nox phase
 +of the build, though seemingly not the emacs-lucid phase.
 +---
 + test/lisp/server-tests.el | 4 +++-
 + 1 file changed, 3 insertions(+), 1 deletion(-)
 +
 +diff --git a/test/lisp/server-tests.el b/test/lisp/server-tests.el
 +index 444c2f99fa7..02106808518 100644
 +--- a/test/lisp/server-tests.el
 ++++ b/test/lisp/server-tests.el
 +@@ -195,7 +195,9 @@ server-tests/server-force-stop/keeps-frames
 + tests that `server-force-stop' doesn't delete frames (and even
 + then, requires a few tricks to run as a regression test).  So
 + long as this works, the problem in bug#58877 shouldn't occur."
 +-  (skip-unless server-tests/can-create-frames-p)
 ++  (skip-unless (and server-tests/can-create-frames-p
 ++                    (not (string-prefix-p "riscv64-"
 ++                                          system-configuration))))
 +   (let* ((starting-frames (frame-list))
 +          (starting-frame-count (length starting-frames))
 +          terminal)
index f5d68103cd443d1bdc454cb1b1cf0716495814b3,0000000000000000000000000000000000000000..45cd451b0a36f10ef13a5e1866dbafd9f14fcdd0
mode 100644,000000..100644
--- /dev/null
@@@ -1,26 -1,0 +1,26 @@@
- From 22d6e7ad34d947c1154358cd3a59789f539a9cf5 Mon Sep 17 00:00:00 2001
++From 53052b6f0a34ddef18a6c3e282f768f9cc9ea0f9 Mon Sep 17 00:00:00 2001
 +From: Sean Whitton <spwhitton@spwhitton.name>
 +Date: Sun, 30 Mar 2025 13:24:23 +0800
 +Subject: Disable emacs-module-tests.el
 +
 +This regularly causes Emacs to FTBFS.
 +---
 + test/Makefile.in | 4 ----
 + 1 file changed, 4 deletions(-)
 +
 +diff --git a/test/Makefile.in b/test/Makefile.in
 +index 842c0517b98..578c05281b4 100644
 +--- a/test/Makefile.in
 ++++ b/test/Makefile.in
 +@@ -186,11 +186,7 @@ testloadfile =
 +        -l ert ${ert_opts} -l $(testloadfile) \
 +        $(TEST_RUN_ERT)
 + 
 +-ifeq (@HAVE_MODULES@, yes)
 +-maybe_exclude_module_tests :=
 +-else
 + maybe_exclude_module_tests := -name emacs-module-tests.el -prune -o
 +-endif
 + 
 + ## Optional list of .el files to exclude from testing.
 + ## Intended for use in automated testing where one or more files
index b271d6ed4aee5bc001c679a604c571cd84ac06d1,0000000000000000000000000000000000000000..22171427b41bee85bd520d0f447e01040ddb88fd
mode 100644,000000..100644
--- /dev/null
@@@ -1,48 -1,0 +1,48 @@@
- From 52a49907e53a0f4f484e0759ae317fd728f12153 Mon Sep 17 00:00:00 2001
++From 5ad268f00faac747beadf29c4a6216c678764c30 Mon Sep 17 00:00:00 2001
 +From: Xiyue Deng <manphiz@gmail.com>
 +Date: Fri, 20 Jun 2025 21:34:45 -0700
 +Subject: Add public interfaces for accessing builtin package info (Bug#78844)
 +
 +The following upstream patch has been backported:
 +
 +  Add public interfaces for accessing builtin package info (Bug#78844)
 +
 +  * lisp/emacs-lisp/package.el (package-builtin-packages)
 +  (package-builtin-package-version): New functions.
 +  * doc/lispref/package.texi: Add a section 'Package Information' with
 +  documentation for the new functions.
 +  * etc/NEWS: Add entry for 'package-versioned-builtin-packages' and
 +  'package-builtin-package-version'.
 +
 +Origin: upstream, commit 5c75ec6ae52a5b06ad0424ce805f5ea0432b6e90
 +Forwarded: not-needed
 +---
 + lisp/emacs-lisp/package.el | 15 +++++++++++++++
 + 1 file changed, 15 insertions(+)
 +
 +diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
 +index be3b85f3179..82b7520a707 100644
 +--- a/lisp/emacs-lisp/package.el
 ++++ b/lisp/emacs-lisp/package.el
 +@@ -669,6 +669,21 @@ package-alist
 + loaded and/or activated, customize `package-load-list'.")
 + (put 'package-alist 'risky-local-variable t)
 + 
 ++;;;; Public interfaces for accessing built-in package info
 ++
 ++(defun package-versioned-builtin-packages ()
 ++  "Return a list of all the versioned built-in packages.
 ++The return value is a list of names of built-in packages represented as
 ++symbols."
 ++  (mapcar #'car package--builtin-versions))
 ++
 ++(defun package-builtin-package-version (package)
 ++  "Return the version of a built-in PACKAGE given by its symbol.
 ++The return value is a list of integers representing the version of
 ++PACKAGE, in the format returned by `version-to-list', or nil if the
 ++package is built-in but has no version or is not a built-in package."
 ++  (alist-get package package--builtin-versions))
 ++
 + ;;;###autoload
 + (defvar package-activated-list nil
 +   ;; FIXME: This should implicitly include all builtin packages.
index d151f47a253398419b76ed83ca19aaa4be7dd2cb,0000000000000000000000000000000000000000..15db2846edf748645785ca34749dcfc7405241d5
mode 100644,000000..100644
--- /dev/null
@@@ -1,38 -1,0 +1,38 @@@
- From 0ba136caed372eb8eb963b2a421f944f4671ddec Mon Sep 17 00:00:00 2001
++From 60a4ccd482d6856c7aa1cecf0d9ab2461c27b96d Mon Sep 17 00:00:00 2001
 +From: Eli Zaretskii <eliz@gnu.org>
 +Date: Thu, 17 Jul 2025 19:34:50 +0300
 +Subject: ; * test/lisp/net/shr-tests.el (shr-test/zoom-image): Fix <img>
 + (bug#79041).
 +
 +(cherry picked from commit 462a541db904405ede8446c48ba0c71ad41c544d)
 +
 +README-Debian: The shr-test/zoom image test should now work with libxml2 2.14+
 + .
 + This upstream patch has been added to fix the problem:
 + .
 + commit 462a541db904405ede8446c48ba0c71ad41c544d
 + Author: Eli Zaretskii <eliz@gnu.org>
 + Date:   Thu Jul 17 19:34:50 2025 +0300
 + .
 +    ; * test/lisp/net/shr-tests.el (shr-test/zoom-image): Fix <img> (bug#79041).
 +Bug: https://debbugs.gnu.org/79041
 +Bug-Debian: https://bugs.debian.org/1106354
 +---
 + test/lisp/net/shr-tests.el | 4 ++--
 + 1 file changed, 2 insertions(+), 2 deletions(-)
 +
 +diff --git a/test/lisp/net/shr-tests.el b/test/lisp/net/shr-tests.el
 +index 8d66684c96d..4978db27df5 100644
 +--- a/test/lisp/net/shr-tests.el
 ++++ b/test/lisp/net/shr-tests.el
 +@@ -145,8 +145,8 @@ shr-test/zoom-image
 +     (dolist (alt '(nil "" "nothing to see here"))
 +       (with-temp-buffer
 +         (ert-info ((format "image with alt=%S" alt))
 +-          (let ((attrs (if alt (format " alt=\"%s\"" alt) "")))
 +-            (insert (format "<img src=\"%s\" %s" image-url attrs)))
 ++          (let ((attrs (if alt (format " alt=\"%s\">" alt) ">")))
 ++            (insert (format "<img src=\"%s\"%s" image-url attrs)))
 +           (cl-letf* (;; Pretend we're a graphical display.
 +                      ((symbol-function 'display-graphic-p) #'always)
 +                      ((symbol-function 'url-queue-retrieve)